<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>IDA SDK: chooser_t Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">IDA SDK
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="files.html"><span>Header&#160;Files</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#nested-classes">Classes</a> &#124;
<a href="structchooser__t-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">chooser_t Struct Reference</div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>The chooser object without multi-selection. </p>
</div>
<p>Inherits <a class="el" href="structchooser__base__t.html">chooser_base_t</a>.</p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aabf3f8593de20e567c10ff804e1f08d1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aabf3f8593de20e567c10ff804e1f08d1"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>chooser_t</b> (<a class="el" href="pro_8h.html#a1134b580f8da4de94ca6b1de4d37975e">uint32</a> flags_=0, int columns_=0, const int *widths_=NULL, const char *const *header_=NULL, const char *title_=NULL)</td></tr>
<tr class="separator:aabf3f8593de20e567c10ff804e1f08d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga862abc8600a4d9195c315e0fec27cb3a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__choosers.html#ga862abc8600a4d9195c315e0fec27cb3a">choose</a> (<a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a> deflt=0)</td></tr>
<tr class="memdesc:ga862abc8600a4d9195c315e0fec27cb3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Display a generic list chooser and allow the user to select an item.  <a href="group__choosers.html#ga862abc8600a4d9195c315e0fec27cb3a">More...</a><br /></td></tr>
<tr class="separator:ga862abc8600a4d9195c315e0fec27cb3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f8c90c6971c315464f033fb6986f07c"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__t.html#a0f8c90c6971c315464f033fb6986f07c">get_item_index</a> (const void *item_data) const </td></tr>
<tr class="memdesc:a0f8c90c6971c315464f033fb6986f07c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the position (index) of the item.  <a href="#a0f8c90c6971c315464f033fb6986f07c">More...</a><br /></td></tr>
<tr class="separator:a0f8c90c6971c315464f033fb6986f07c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac940a68a1b2e6355be10aaebc51ab2a9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac940a68a1b2e6355be10aaebc51ab2a9"></a>
typedef&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__t.html#ac940a68a1b2e6355be10aaebc51ab2a9">cbret_t</a> (<a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> chooser_t::*cb_t)(size_t n)</td></tr>
<tr class="memdesc:ac940a68a1b2e6355be10aaebc51ab2a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type of <a class="el" href="structchooser__t.html#ae1cbaa0d39ea572227d14ff5a0200ef8" title="User asked to insert an element. ">ins()</a>, <a class="el" href="structchooser__t.html#ad3fc6f6394b25bcb0c28c8cfcddc47d9" title="User deleted an element. ">del()</a>, <a class="el" href="structchooser__t.html#a967c4202d2aca1ddead4380741de6e13" title="User asked to edit an element. ">edit()</a>, <a class="el" href="structchooser__t.html#a496455101727dd1f2524399af583d970" title="User pressed the enter key. ">enter()</a>, <a class="el" href="structchooser__t.html#a7217277c36ddf006b76190b8e589a2df" title="The chooser needs to be refreshed. ">refresh()</a> callbacks. <br /></td></tr>
<tr class="separator:ac940a68a1b2e6355be10aaebc51ab2a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1cbaa0d39ea572227d14ff5a0200ef8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae1cbaa0d39ea572227d14ff5a0200ef8"></a>
virtual <a class="el" href="structchooser__t_1_1cbret__t.html">cbret_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__t.html#ae1cbaa0d39ea572227d14ff5a0200ef8">ins</a> (<a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a>)</td></tr>
<tr class="memdesc:ae1cbaa0d39ea572227d14ff5a0200ef8"><td class="mdescLeft">&#160;</td><td class="mdescRight">User asked to insert an element. <br /></td></tr>
<tr class="separator:ae1cbaa0d39ea572227d14ff5a0200ef8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3fc6f6394b25bcb0c28c8cfcddc47d9"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structchooser__t_1_1cbret__t.html">cbret_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__t.html#ad3fc6f6394b25bcb0c28c8cfcddc47d9">del</a> (size_t)</td></tr>
<tr class="memdesc:ad3fc6f6394b25bcb0c28c8cfcddc47d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">User deleted an element.  <a href="#ad3fc6f6394b25bcb0c28c8cfcddc47d9">More...</a><br /></td></tr>
<tr class="separator:ad3fc6f6394b25bcb0c28c8cfcddc47d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a967c4202d2aca1ddead4380741de6e13"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structchooser__t_1_1cbret__t.html">cbret_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__t.html#a967c4202d2aca1ddead4380741de6e13">edit</a> (size_t)</td></tr>
<tr class="memdesc:a967c4202d2aca1ddead4380741de6e13"><td class="mdescLeft">&#160;</td><td class="mdescRight">User asked to edit an element.  <a href="#a967c4202d2aca1ddead4380741de6e13">More...</a><br /></td></tr>
<tr class="separator:a967c4202d2aca1ddead4380741de6e13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a496455101727dd1f2524399af583d970"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structchooser__t_1_1cbret__t.html">cbret_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__t.html#a496455101727dd1f2524399af583d970">enter</a> (size_t)</td></tr>
<tr class="memdesc:a496455101727dd1f2524399af583d970"><td class="mdescLeft">&#160;</td><td class="mdescRight">User pressed the enter key.  <a href="#a496455101727dd1f2524399af583d970">More...</a><br /></td></tr>
<tr class="separator:a496455101727dd1f2524399af583d970"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7217277c36ddf006b76190b8e589a2df"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structchooser__t_1_1cbret__t.html">cbret_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__t.html#a7217277c36ddf006b76190b8e589a2df">refresh</a> (<a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a> n)</td></tr>
<tr class="memdesc:a7217277c36ddf006b76190b8e589a2df"><td class="mdescLeft">&#160;</td><td class="mdescRight">The chooser needs to be refreshed.  <a href="#a7217277c36ddf006b76190b8e589a2df">More...</a><br /></td></tr>
<tr class="separator:a7217277c36ddf006b76190b8e589a2df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a090643bf436bcdfacabd2b99b979dbd5"><td class="memItemLeft" align="right" valign="top">virtual void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__t.html#a090643bf436bcdfacabd2b99b979dbd5">select</a> (<a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a>) const </td></tr>
<tr class="memdesc:a090643bf436bcdfacabd2b99b979dbd5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Selection changed (cursor moved).  <a href="#a090643bf436bcdfacabd2b99b979dbd5">More...</a><br /></td></tr>
<tr class="separator:a090643bf436bcdfacabd2b99b979dbd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_structchooser__base__t"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_structchooser__base__t')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="structchooser__base__t.html">chooser_base_t</a></td></tr>
<tr class="memitem:a8d2c10d79b9584b69197c6a946169313 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8d2c10d79b9584b69197c6a946169313"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>chooser_base_t</b> (<a class="el" href="pro_8h.html#a1134b580f8da4de94ca6b1de4d37975e">uint32</a> flags_=0, int columns_=0, const int *widths_=NULL, const char *const *header_=NULL, const char *title_=NULL)</td></tr>
<tr class="separator:a8d2c10d79b9584b69197c6a946169313 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48cf11bb95e1e074bdb32f5000296c05 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a48cf11bb95e1e074bdb32f5000296c05"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>call_destructor</b> ()</td></tr>
<tr class="separator:a48cf11bb95e1e074bdb32f5000296c05 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d7b6415a56686b33a01aff41a10c866 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top">virtual void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a1d7b6415a56686b33a01aff41a10c866">get_chooser_obj</a> ()</td></tr>
<tr class="memdesc:a1d7b6415a56686b33a01aff41a10c866 inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">get pointer to some custom data.  <a href="#a1d7b6415a56686b33a01aff41a10c866">More...</a><br /></td></tr>
<tr class="separator:a1d7b6415a56686b33a01aff41a10c866 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68d1744878d9aa3a45457fb07392857f inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top">virtual const void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a68d1744878d9aa3a45457fb07392857f">get_obj_id</a> (size_t *len) const </td></tr>
<tr class="memdesc:a68d1744878d9aa3a45457fb07392857f inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">get the id of the chooser data.  <a href="#a68d1744878d9aa3a45457fb07392857f">More...</a><br /></td></tr>
<tr class="separator:a68d1744878d9aa3a45457fb07392857f inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7677483d04c47d44c5649e7b5ab8bacf inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7677483d04c47d44c5649e7b5ab8bacf"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a7677483d04c47d44c5649e7b5ab8bacf">is_same</a> (const <a class="el" href="structchooser__base__t.html">chooser_base_t</a> *other) const </td></tr>
<tr class="memdesc:a7677483d04c47d44c5649e7b5ab8bacf inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">do the current and the given objects hold the same data? <br /></td></tr>
<tr class="separator:a7677483d04c47d44c5649e7b5ab8bacf inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68e5861039efc74e41aaf41364f68b59 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a68e5861039efc74e41aaf41364f68b59"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a68e5861039efc74e41aaf41364f68b59">can_ins</a> () const </td></tr>
<tr class="memdesc:a68e5861039efc74e41aaf41364f68b59 inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">is an operation allowed? <br /></td></tr>
<tr class="separator:a68e5861039efc74e41aaf41364f68b59 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a139bf7516eb011911a9c5db0d5b433 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a139bf7516eb011911a9c5db0d5b433"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>can_del</b> () const </td></tr>
<tr class="separator:a4a139bf7516eb011911a9c5db0d5b433 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a937b8232f39efef8c232fb29748bbe94 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a937b8232f39efef8c232fb29748bbe94"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>can_edit</b> () const </td></tr>
<tr class="separator:a937b8232f39efef8c232fb29748bbe94 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a010e383d86f6ffdc08c7140539eac98f inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a010e383d86f6ffdc08c7140539eac98f"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>can_refresh</b> () const </td></tr>
<tr class="separator:a010e383d86f6ffdc08c7140539eac98f inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62d84ea798df2d3ee413dd1e3401d272 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a62d84ea798df2d3ee413dd1e3401d272"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a62d84ea798df2d3ee413dd1e3401d272">popup_allowed</a> (int i) const </td></tr>
<tr class="memdesc:a62d84ea798df2d3ee413dd1e3401d272 inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">is a popup action allowed? <br /></td></tr>
<tr class="separator:a62d84ea798df2d3ee413dd1e3401d272 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b94a95a066d2e7f1f9ceb01affdc43d inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b94a95a066d2e7f1f9ceb01affdc43d"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a0b94a95a066d2e7f1f9ceb01affdc43d">is_modal</a> () const </td></tr>
<tr class="memdesc:a0b94a95a066d2e7f1f9ceb01affdc43d inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">is choose modal? <br /></td></tr>
<tr class="separator:a0b94a95a066d2e7f1f9ceb01affdc43d inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd85a1b245dcf7f05741cddbfff7d2c0 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd85a1b245dcf7f05741cddbfff7d2c0"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#acd85a1b245dcf7f05741cddbfff7d2c0">is_multi</a> () const </td></tr>
<tr class="memdesc:acd85a1b245dcf7f05741cddbfff7d2c0 inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">is multi-selection allowed? <br /></td></tr>
<tr class="separator:acd85a1b245dcf7f05741cddbfff7d2c0 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fc113aea94b2faf9ee0a15e8b7219c0 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9fc113aea94b2faf9ee0a15e8b7219c0"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a9fc113aea94b2faf9ee0a15e8b7219c0">ask_item_attrs</a> () const </td></tr>
<tr class="memdesc:a9fc113aea94b2faf9ee0a15e8b7219c0 inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">should chooser generate ui_get_chooser_item_attrs events? <br /></td></tr>
<tr class="separator:a9fc113aea94b2faf9ee0a15e8b7219c0 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab589cc1214d780d46da5b620f03e2426 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab589cc1214d780d46da5b620f03e2426"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#ab589cc1214d780d46da5b620f03e2426">is_noidb</a> () const </td></tr>
<tr class="memdesc:ab589cc1214d780d46da5b620f03e2426 inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">can use the chooser before opening the database? <br /></td></tr>
<tr class="separator:ab589cc1214d780d46da5b620f03e2426 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fe1c01a34f63b3262321b750b7e6655 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6fe1c01a34f63b3262321b750b7e6655"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a6fe1c01a34f63b3262321b750b7e6655">is_force_default</a> () const </td></tr>
<tr class="memdesc:a6fe1c01a34f63b3262321b750b7e6655 inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">should selection of the already opened non-modal chooser be changed? <br /></td></tr>
<tr class="separator:a6fe1c01a34f63b3262321b750b7e6655 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af75a3f531e490ae998c216fc260975a4 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af75a3f531e490ae998c216fc260975a4"></a>
<a class="el" href="pro_8h.html#a91ad9478d81a7aaf2593e8d9c3d06a14">uint</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#af75a3f531e490ae998c216fc260975a4">get_builtin_number</a> () const </td></tr>
<tr class="memdesc:af75a3f531e490ae998c216fc260975a4 inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">get number of the built-in chooser <br /></td></tr>
<tr class="separator:af75a3f531e490ae998c216fc260975a4 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e51084dfda711975bf40ddf1e16599c inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1e51084dfda711975bf40ddf1e16599c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a1e51084dfda711975bf40ddf1e16599c">set_ask_item_attrs</a> (bool enable)</td></tr>
<tr class="memdesc:a1e51084dfda711975bf40ddf1e16599c inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">enabled or disable generation of ui_get_chooser_item_attrs events <br /></td></tr>
<tr class="separator:a1e51084dfda711975bf40ddf1e16599c inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a601d9440b5f27cf0370770cf5fd450a8 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a601d9440b5f27cf0370770cf5fd450a8"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>check_version</b> (<a class="el" href="pro_8h.html#a1134b580f8da4de94ca6b1de4d37975e">uint32</a> ver) const </td></tr>
<tr class="separator:a601d9440b5f27cf0370770cf5fd450a8 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8bec7564d1fcd0925ceb413b4dd4ddb0 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8bec7564d1fcd0925ceb413b4dd4ddb0"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>is_quick_filter_visible_initially</b> () const </td></tr>
<tr class="separator:a8bec7564d1fcd0925ceb413b4dd4ddb0 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a949a0627a9a1c3ccf8005f9805ccb826 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a949a0627a9a1c3ccf8005f9805ccb826"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>get_quick_filter_initial_mode</b> () const </td></tr>
<tr class="separator:a949a0627a9a1c3ccf8005f9805ccb826 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a98358c499915613dd870c3a0bff84754 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top">virtual bool <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a98358c499915613dd870c3a0bff84754">init</a> ()</td></tr>
<tr class="memdesc:a98358c499915613dd870c3a0bff84754 inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">initialize the chooser and populate it.  <a href="#a98358c499915613dd870c3a0bff84754">More...</a><br /></td></tr>
<tr class="separator:a98358c499915613dd870c3a0bff84754 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a475d4348942084a72352a0c706cded4f inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top">void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a475d4348942084a72352a0c706cded4f">get_header</a> (<a class="el" href="pro_8h.html#a823b67c620f6cdca97e1d969ea4a9b02">qstrvec_t</a> *cols) const </td></tr>
<tr class="memdesc:a475d4348942084a72352a0c706cded4f inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">get the header line of the chooser  <a href="#a475d4348942084a72352a0c706cded4f">More...</a><br /></td></tr>
<tr class="separator:a475d4348942084a72352a0c706cded4f inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4fb846be396deb859a018f4fde65294f inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4fb846be396deb859a018f4fde65294f"></a>
virtual size_t <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a4fb846be396deb859a018f4fde65294f">get_count</a> () const  =0</td></tr>
<tr class="memdesc:a4fb846be396deb859a018f4fde65294f inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">get the number of elements in the chooser <br /></td></tr>
<tr class="separator:a4fb846be396deb859a018f4fde65294f inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af30c1c9f18f9db3f936b63c2d211289c inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top">virtual void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#af30c1c9f18f9db3f936b63c2d211289c">get_row</a> (<a class="el" href="pro_8h.html#a823b67c620f6cdca97e1d969ea4a9b02">qstrvec_t</a> *cols, int *icon_, <a class="el" href="structchooser__item__attrs__t.html">chooser_item_attrs_t</a> *attrs, size_t n) const  =0</td></tr>
<tr class="memdesc:af30c1c9f18f9db3f936b63c2d211289c inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">get a description of an element.  <a href="#af30c1c9f18f9db3f936b63c2d211289c">More...</a><br /></td></tr>
<tr class="separator:af30c1c9f18f9db3f936b63c2d211289c inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16b92ac2c1b42beee8567a86c3d6df7c inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a16b92ac2c1b42beee8567a86c3d6df7c">get_ea</a> (size_t) const </td></tr>
<tr class="memdesc:a16b92ac2c1b42beee8567a86c3d6df7c inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">get an address of an element.  <a href="#a16b92ac2c1b42beee8567a86c3d6df7c">More...</a><br /></td></tr>
<tr class="separator:a16b92ac2c1b42beee8567a86c3d6df7c inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acaeea0f879cfc2228aa20adbf9f8a839 inherit pub_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acaeea0f879cfc2228aa20adbf9f8a839"></a>
virtual void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#acaeea0f879cfc2228aa20adbf9f8a839">closed</a> ()</td></tr>
<tr class="memdesc:acaeea0f879cfc2228aa20adbf9f8a839 inherit pub_methods_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">The chooser window is closed. <br /></td></tr>
<tr class="separator:acaeea0f879cfc2228aa20adbf9f8a839 inherit pub_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:ac3641fc880df7aa583e686d3cb35f278"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac3641fc880df7aa583e686d3cb35f278"></a>
<a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>new_sel_after_del</b> (size_t n) const </td></tr>
<tr class="separator:ac3641fc880df7aa583e686d3cb35f278"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca3d5a0464985986aa298db5cdd18a14"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aca3d5a0464985986aa298db5cdd18a14"></a>
<a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><b>adjust_last_item</b> (size_t n) const </td></tr>
<tr class="separator:aca3d5a0464985986aa298db5cdd18a14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_structchooser__base__t"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_structchooser__base__t')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="structchooser__base__t.html">chooser_base_t</a></td></tr>
<tr class="memitem:a1ba303ca874b35020641d02bf04e5196 inherit pro_methods_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1ba303ca874b35020641d02bf04e5196"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>init_popup_names</b> (const char *const default_popup_names[NSTDPOPUPS])</td></tr>
<tr class="separator:a1ba303ca874b35020641d02bf04e5196 inherit pro_methods_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__t_1_1cbret__t.html">cbret_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return value of <a class="el" href="structchooser__t.html#ae1cbaa0d39ea572227d14ff5a0200ef8" title="User asked to insert an element. ">ins()</a>, <a class="el" href="structchooser__t.html#ad3fc6f6394b25bcb0c28c8cfcddc47d9" title="User deleted an element. ">del()</a>, <a class="el" href="structchooser__t.html#a967c4202d2aca1ddead4380741de6e13" title="User asked to edit an element. ">edit()</a>, <a class="el" href="structchooser__t.html#a496455101727dd1f2524399af583d970" title="User pressed the enter key. ">enter()</a>, <a class="el" href="structchooser__t.html#a7217277c36ddf006b76190b8e589a2df" title="The chooser needs to be refreshed. ">refresh()</a> callbacks.  <a href="structchooser__t_1_1cbret__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_attribs_structchooser__base__t"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_structchooser__base__t')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="structchooser__base__t.html">chooser_base_t</a></td></tr>
<tr class="memitem:af87d5449fca32811240d52e92bde651e inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af87d5449fca32811240d52e92bde651e"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#af87d5449fca32811240d52e92bde651e">x0</a></td></tr>
<tr class="memdesc:af87d5449fca32811240d52e92bde651e inherit pub_attribs_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">screen position, <a class="el" href="group__choosers.html">Functions: generic list choosers</a> <br /></td></tr>
<tr class="separator:af87d5449fca32811240d52e92bde651e inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7203916efc122ed7e1389c4720a66da4 inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7203916efc122ed7e1389c4720a66da4"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>y0</b></td></tr>
<tr class="separator:a7203916efc122ed7e1389c4720a66da4 inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f7ed151967b25ea6c668e736ae67146 inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1f7ed151967b25ea6c668e736ae67146"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>x1</b></td></tr>
<tr class="separator:a1f7ed151967b25ea6c668e736ae67146 inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63397b908a324623312859c546ff1881 inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63397b908a324623312859c546ff1881"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>y1</b></td></tr>
<tr class="separator:a63397b908a324623312859c546ff1881 inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a151d40817511fdc1f71992e142b28cb4 inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a151d40817511fdc1f71992e142b28cb4"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a151d40817511fdc1f71992e142b28cb4">width</a></td></tr>
<tr class="memdesc:a151d40817511fdc1f71992e142b28cb4 inherit pub_attribs_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">(in chars) <br /></td></tr>
<tr class="separator:a151d40817511fdc1f71992e142b28cb4 inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abdfd5d8dd5fc7b94918412405f64054a inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abdfd5d8dd5fc7b94918412405f64054a"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#abdfd5d8dd5fc7b94918412405f64054a">height</a></td></tr>
<tr class="memdesc:abdfd5d8dd5fc7b94918412405f64054a inherit pub_attribs_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">(in chars) <br /></td></tr>
<tr class="separator:abdfd5d8dd5fc7b94918412405f64054a inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afed0e6eb1d254ec47a4e8d93a38cb339 inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#afed0e6eb1d254ec47a4e8d93a38cb339">title</a></td></tr>
<tr class="memdesc:afed0e6eb1d254ec47a4e8d93a38cb339 inherit pub_attribs_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">menu title (includes ptr to help).  <a href="#afed0e6eb1d254ec47a4e8d93a38cb339">More...</a><br /></td></tr>
<tr class="separator:afed0e6eb1d254ec47a4e8d93a38cb339 inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e88650ee7434c5b045a769773e36000 inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e88650ee7434c5b045a769773e36000"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a4e88650ee7434c5b045a769773e36000">columns</a></td></tr>
<tr class="memdesc:a4e88650ee7434c5b045a769773e36000 inherit pub_attribs_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">number of columns <br /></td></tr>
<tr class="separator:a4e88650ee7434c5b045a769773e36000 inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd3111894f68258b4fba46c77a96ee45 inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top">const int *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#afd3111894f68258b4fba46c77a96ee45">widths</a></td></tr>
<tr class="memdesc:afd3111894f68258b4fba46c77a96ee45 inherit pub_attribs_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">column widths  <a href="#afd3111894f68258b4fba46c77a96ee45">More...</a><br /></td></tr>
<tr class="separator:afd3111894f68258b4fba46c77a96ee45 inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7e08caf3a73e8c49ef25936f93fa551 inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af7e08caf3a73e8c49ef25936f93fa551"></a>
const char *const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#af7e08caf3a73e8c49ef25936f93fa551">header</a></td></tr>
<tr class="memdesc:af7e08caf3a73e8c49ef25936f93fa551 inherit pub_attribs_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">header line <br /></td></tr>
<tr class="separator:af7e08caf3a73e8c49ef25936f93fa551 inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0506d5980c2bdd80d6e1dcaf3d8e29f2 inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0506d5980c2bdd80d6e1dcaf3d8e29f2"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a0506d5980c2bdd80d6e1dcaf3d8e29f2">icon</a></td></tr>
<tr class="memdesc:a0506d5980c2bdd80d6e1dcaf3d8e29f2 inherit pub_attribs_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">default icon <br /></td></tr>
<tr class="separator:a0506d5980c2bdd80d6e1dcaf3d8e29f2 inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3d2a7add9d67da4a192b940fdc285aa inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a386c10c6aa4340f1d63df85f40454fce">qstring</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#af3d2a7add9d67da4a192b940fdc285aa">popup_names</a> [NSTDPOPUPS]</td></tr>
<tr class="memdesc:af3d2a7add9d67da4a192b940fdc285aa inherit pub_attribs_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">array of custom popup menu names.  <a href="#af3d2a7add9d67da4a192b940fdc285aa">More...</a><br /></td></tr>
<tr class="separator:af3d2a7add9d67da4a192b940fdc285aa inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc54b8013e874ea5df7a947b20ffb09d inherit pub_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc54b8013e874ea5df7a947b20ffb09d"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#abc54b8013e874ea5df7a947b20ffb09d">deflt_col</a></td></tr>
<tr class="memdesc:abc54b8013e874ea5df7a947b20ffb09d inherit pub_attribs_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">Column that will have focus. <br /></td></tr>
<tr class="separator:abc54b8013e874ea5df7a947b20ffb09d inherit pub_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_structchooser__base__t"><td colspan="2" onclick="javascript:toggleInherit('pub_types_structchooser__base__t')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="structchooser__base__t.html">chooser_base_t</a></td></tr>
<tr class="memitem:ga622dc2e496d61c7a8a8cb931970784eb inherit pub_types_structchooser__base__t"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="group__chooser__index.html#gga622dc2e496d61c7a8a8cb931970784eba100e0d1651b8811c7df60f02d991ef6e">NO_SELECTION</a> = -1, 
<a class="el" href="group__chooser__index.html#gga622dc2e496d61c7a8a8cb931970784eba403da04064cc128f8b3c349032275bf0">EMPTY_CHOOSER</a> = -2, 
<a class="el" href="group__chooser__index.html#gga622dc2e496d61c7a8a8cb931970784eba1c9909c9fe579274c2a3392f06fdab53">ALREADY_EXISTS</a> = -3, 
<a class="el" href="group__chooser__index.html#gga622dc2e496d61c7a8a8cb931970784ebadd3620f9706987cdd059fb99da30f6a1">NO_ATTR</a> = -4
 }</td></tr>
<tr class="separator:ga622dc2e496d61c7a8a8cb931970784eb inherit pub_types_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e8acc5ead68d124f9e463f7a9813365 inherit pub_types_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6e8acc5ead68d124f9e463f7a9813365"></a>enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
&#160;&#160;<b>POPUP_INS</b>, 
<b>POPUP_DEL</b>, 
<b>POPUP_EDIT</b>, 
<b>POPUP_REFRESH</b>, 
<br />
&#160;&#160;<b>NSTDPOPUPS</b>
<br />
 }</td></tr>
<tr class="separator:a6e8acc5ead68d124f9e463f7a9813365 inherit pub_types_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a753ae8c73ea5a644ee31571ab5c0e27f inherit pub_types_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a753ae8c73ea5a644ee31571ab5c0e27f"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a753ae8c73ea5a644ee31571ab5c0e27f">cbres_t</a> { <b>NOTHING_CHANGED</b>, 
<b>ALL_CHANGED</b>, 
<b>SELECTION_CHANGED</b>
 }</td></tr>
<tr class="memdesc:a753ae8c73ea5a644ee31571ab5c0e27f"><td class="mdescLeft">&#160;</td><td class="mdescRight">return value of ins(), del(), edit(), enter(), refresh() callbacks <br /></td></tr>
<tr class="separator:a753ae8c73ea5a644ee31571ab5c0e27f inherit pub_types_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_structchooser__base__t"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_structchooser__base__t')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="structchooser__base__t.html">chooser_base_t</a></td></tr>
<tr class="memitem:a904eb7c089bfc71f4245a3da1c1ad2a6 inherit pro_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a904eb7c089bfc71f4245a3da1c1ad2a6"></a>
<a class="el" href="pro_8h.html#a1134b580f8da4de94ca6b1de4d37975e">uint32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a904eb7c089bfc71f4245a3da1c1ad2a6">version</a></td></tr>
<tr class="memdesc:a904eb7c089bfc71f4245a3da1c1ad2a6 inherit pro_attribs_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight">version of the class <br /></td></tr>
<tr class="separator:a904eb7c089bfc71f4245a3da1c1ad2a6 inherit pro_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f07ecd9380abf95304d73b76e7f2703 inherit pro_attribs_structchooser__base__t"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f07ecd9380abf95304d73b76e7f2703"></a>
<a class="el" href="pro_8h.html#a1134b580f8da4de94ca6b1de4d37975e">uint32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchooser__base__t.html#a8f07ecd9380abf95304d73b76e7f2703">flags</a></td></tr>
<tr class="memdesc:a8f07ecd9380abf95304d73b76e7f2703 inherit pro_attribs_structchooser__base__t"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="group___c_h__.html">Generic chooser flags</a> <br /></td></tr>
<tr class="separator:a8f07ecd9380abf95304d73b76e7f2703 inherit pro_attribs_structchooser__base__t"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a0f8c90c6971c315464f033fb6986f07c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> chooser_t::get_item_index </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>item_data</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the position (index) of the item. </p>
<p>A simple chooser considers `item_data` as an index. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">item_data</td><td>pointer to some data that indentifies the item </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>idx item index, NO_SELECTION - there is no item with such data </dd></dl>

</div>
</div>
<a class="anchor" id="ad3fc6f6394b25bcb0c28c8cfcddc47d9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structchooser__t_1_1cbret__t.html">cbret_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> chooser_t::del </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>User deleted an element. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">n</td><td>index of the element to delete </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>idx index of the selected item (cursor) changed what is changed </dd></dl>

</div>
</div>
<a class="anchor" id="a967c4202d2aca1ddead4380741de6e13"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structchooser__t_1_1cbret__t.html">cbret_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> chooser_t::edit </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>User asked to edit an element. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">n</td><td>index of the element to edit </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>idx index of the selected item (cursor) changed what is changed </dd></dl>

</div>
</div>
<a class="anchor" id="a496455101727dd1f2524399af583d970"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structchooser__t_1_1cbret__t.html">cbret_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> chooser_t::enter </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>User pressed the enter key. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">n</td><td>index of the element where &lt;Enter&gt; was pressed </td></tr>
  </table>
  </dd>
</dl>
<dl class="retval"><dt>Return values</dt><dd>
  <table class="retval">
    <tr><td class="paramname">false</td><td>nothing changed </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>idx index of the selected item (cursor) changed what is changed </dd></dl>

</div>
</div>
<a class="anchor" id="a7217277c36ddf006b76190b8e589a2df"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structchooser__t_1_1cbret__t.html">cbret_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> chooser_t::refresh </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a>&#160;</td>
          <td class="paramname"><em>n</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>The chooser needs to be refreshed. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">n</td><td>index of the selected (current) item </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>idx new index of the current item (as it may change during refresh) changed what is changed </dd></dl>

</div>
</div>
<a class="anchor" id="a090643bf436bcdfacabd2b99b979dbd5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a> chooser_t::select </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a>&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Selection changed (cursor moved). </p>
<dl class="section note"><dt>Note</dt><dd>This callback is not supported in the txt-version. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">n</td><td>index of the new selected item </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="kernwin_8hpp.html">kernwin.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.9.1
</small></address>
</body>
</html>
